In recent decades, electronic technology, and in particular mobile devices, has revolutionized our everyday lives. Devices such as cell phones having cellular and Wi-Fi access to the Internet have permeated the lives of almost every person living in the developed world, and a significant number of people living in undeveloped countries. Mobile communication and computing devices, especially, have become the means by which countless millions conduct their personal and professional interactions with the world. It has become almost impossible for many people, especially those in the business world, who use these devices as a means to improve productivity, to function without access to their electronic devices.
Tightly related to this device proliferation, an increasing number of applications are developed for such devices, including versions of enterprise applications adapted to mobile devices, such as banking applications, Enterprise resource planning (ERP) applications, Customer relationship management (CRM) applications, and others.
Some of these applications are highly dependent on server access, since many user operations require retrieving or storing data to or from a server. Thus, the connectivity and the usage patterns of the applications highly affect the user experience and usability of the applications, and present the developer with particular challenges when designing and implementing such applications.
The term network connectivity may relate to a multiplicity of factors, e.g. whether the device is connected to the network, the network signal strength, the network signal trend based on location and time, which type of connection is available e.g. secure or insecure network, or other characteristics of the environment.
Other factors that may also affect the usage may include the user's whereabouts, the user's typical navigation paths and common actions within the application, favorite hot spots within the application, or the like.
Thus, the dynamic environment, usage context or specific user style of interaction, may all affect the usability of an application.